let foo ={  // 老板
    value:1
}

let name='sjfk',
age=18;

Function.prototype.apply2=function(context=window,args=[]){
    // 老板和员工之间的联系，在原型链上添加这个方法
    context.fn=this; //动态加属性
    let result=context.fn(...args);
    delete context.fn;
    return result;

}

function bar(name,age){ // 打工者
    console.log(name,age);
    // this 指向全局？js语言的bug  作为对象的方法被调用时 指向对象
    // bar  -foo 方法调用时
    console.log(this.value);  // 由函数的调用方式决定
}

bar.apply2(foo,[name,age]);